﻿using System;

namespace RiskMan.DataClass.Models.Quik
{
    /// <summary>
    /// Таблица квик - Портфель
    /// </summary>
    public class PortfelModel
    {
        #region private

        private string _firm;
        private string _codeClient;
        private string _bigestLevelRisk;
        private string _typeClient;
        private string _srochAccount;
        private double _enterActive;
        private Double _laverage;
        private Double _enterLimite;
        private Double _short;
        private double _long;
        private double _longMo;
        private double _longO;
        private double _currentActives;
        private double _currentLaverage;
        private double _levelMarga;
        private double _currentLimite;
        private double _dostCurrentLimite;
        private double _blockBuy;
        private double _blockBuyMo;
        private double _blockBuyO;
        private double _blockBuyNoMarge;
        private double _blockSell;
        private double _enterSredstva;
        private double _currentSredstva;
        private double _profitLoss;
        private double _persentChange;
        private double _onBuy;
        private double _onSell;
        private double _onBuyNoMarge;
        private double _onBuyObesp;
        private double _goPositions;
        private double _goOrders;
        private double _variableMarg;
        private double _activedOnGo;
        private double _summMoneyOstatoc;
        private double _summBlock;
        private string _parametersRaschet;

        #endregion

        #region public 

        /// <summary>Фирма</summary>
        public string Firm 
        {
            get { return _firm; }
            set
            {
                if (_firm != value)
                    _firm = value;
            }
        }

        /// <summary>Код клиента</summary>
        public string CodeClient
        {
            get { return _codeClient; }
            set
            {
                if (_codeClient != value)
                    _codeClient = value;
            }
        }

        /// <summary>ПовышУрРиска</summary>
        public string BigestLevelRisk
        {
            get { return _bigestLevelRisk; }
            set
            {
                if (_bigestLevelRisk != value)
                    _bigestLevelRisk = value;
            }
        }

        /// <summary>Тип клиента</summary>
        public string TypeClient
        {
            get { return _typeClient; }
            set
            {
                if (_typeClient != value)
                    _typeClient = value;
            }
        }

        /// <summary>Сроч. счет</summary>
        public string SrochAccount
        {
            get { return _srochAccount; }
            set
            {
                if (_srochAccount != value)
                    _srochAccount = value;
            }
        }

        /// <summary>Вход. активы</summary>
        public double EnterActive
        {
            get { return _enterActive; }
            set
            {
                if (_enterActive != value)
                    _enterActive = value;
            }
        }
        
        /// <summary>Плечо</summary>
        public Double Laverage
        {
            get { return _laverage; }
            set
            {
                if (_laverage != value)
                    _laverage = value;
            }
        }
        
        /// <summary>Вход. лимит</summary>
        public Double EnterLimite
        {
            get { return _enterLimite; }
            set
            {
                if (_enterLimite != value)
                    _enterLimite = value;
            }
        }
        
        /// <summary>Шорты</summary>
        public Double Short
        {
            get { return _short; }
            set
            {
                if (_short != value)
                    _short = value;
            }
        }
        
        /// <summary>Лонги</summary>
        public double Long
        {
            get { return _long; }
            set
            {
                if (_long != value)
                    _long = value;
            }
        }
        
        /// <summary>Лонги МО</summary>
        public double LongMO
        {
            get { return _longMo; }
            set
            {
                if (_longMo != value)
                    _longMo = value;
            }
        }
        
        /// <summary>Лонги О</summary>
        public double LongO
        {
            get { return _longO; }
            set
            {
                if (_longO != value)
                    _longO = value;
            }
        }
        
        /// <summary>Тек. активы</summary>
        public double CurrentActives
        {
            get { return _currentActives; }
            set
            {
                if (_currentActives != value)
                    _currentActives = value;
            }
        }
        
        /// <summary>Тек. плечо</summary>
        public double CurrentLaverage
        {
            get { return _currentLaverage; }
            set
            {
                if (_currentLaverage != value)
                    _currentLaverage = value;
            }
        }
        
        /// <summary>Ур. маржи</summary>
        public double LevelMarga
        {
            get { return _levelMarga; }
            set
            {
                if (_levelMarga != value)
                    _levelMarga = value;
            }
        }
        
        /// <summary>Тек. лимит</summary>
        public double CurrentLimite
        {
            get { return _currentLimite; }
            set
            {
                if (_currentLimite != value)
                    _currentLimite = value;
            }
        }
        
        /// <summary>ДостТекЛимит</summary>
        public double DostCurrentLimite
        {
            get { return _dostCurrentLimite; }
            set
            {
                if (_dostCurrentLimite != value)
                    _dostCurrentLimite = value;
            }
        }
        
        /// <summary>БлокПокупка</summary>
        public double BlockBuy
        {
            get { return _blockBuy; }
            set
            {
                if (_blockBuy != value)
                    _blockBuy = value;
            }
        }
        
        /// <summary>БлокПок МО</summary>
        public double BlockBuyMo
        {
            get { return _blockBuyMo; }
            set
            {
                if (_blockBuyMo != value)
                    _blockBuyMo = value;
            }
        }
        
        /// <summary>БлокПок О</summary>
        public double BlockBuyO
        {
            get { return _blockBuyO; }
            set
            {
                if (_blockBuyO != value)
                    _blockBuyO = value;
            }
        }
        
        /// <summary>БлокПокНеМарж</summary>
        public double BlockBuyNoMarge
        {
            get { return _blockBuyNoMarge; }
            set
            {
                if (_blockBuyNoMarge != value)
                    _blockBuyNoMarge = value;
            }
        }
        
        /// <summary>БлокПродажа</summary>
        public double BlockSell
        {
            get { return _blockSell; }
            set
            {
                if (_blockSell != value)
                    _blockSell = value;
            }
        }
        
        /// <summary>ВходСредства</summary>
        public double EnterSredstva
        {
            get { return _enterSredstva; }
            set
            {
                if (_enterSredstva != value)
                    _enterSredstva = value;
            }
        }
        
        /// <summary>ТекСредства</summary>
        public double CurrentSredstva
        {
            get { return _currentSredstva; }
            set
            {
                if (_currentSredstva != value)
                    _currentSredstva = value;
            }
        }
        
        /// <summary>Прибыль/убытки</summary>
        public double ProfitLoss
        {
            get { return _profitLoss; }
            set
            {
                if (_profitLoss != value)
                    _profitLoss = value;
            }
        }
        
        /// <summary>ПроцИзмен</summary>
        public double PersentChange
        {
            get { return _persentChange; }
            set
            {
                if (_persentChange != value)
                    _persentChange = value;
            }
        }
        
        /// <summary>На покупку</summary>
        public double OnBuy
        {
            get { return _onBuy; }
            set
            {
                if (_onBuy != value)
                    _onBuy = value;
            }
        }
        
        /// <summary>На продажу</summary>
        public double OnSell
        {
            get { return _onSell; }
            set
            {
                if (_onSell != value)
                    _onSell = value;
            }
        }
        
        /// <summary>НаПокупНеМаржин</summary>
        public double OnBuyNoMarge
        {
            get { return _onBuyNoMarge; }
            set
            {
                if (_onBuyNoMarge != value)
                    _onBuyNoMarge = value;
            }
        }
        
        /// <summary>НаПокупОбесп</summary>
        public double OnBuyObesp
        {
            get { return _onBuyObesp; }
            set
            {
                if (_onBuyObesp != value)
                    _onBuyObesp = value;
            }
        }
        
        /// <summary>ГО поз</summary>
        public double GOPositions
        {
            get { return _goPositions; }
            set
            {
                if (_goPositions != value)
                    _goPositions = value;
            }
        }
        
        /// <summary>ГО заяв</summary>
        public double GOOrders
        {
            get { return _goOrders; }
            set
            {
                if (_goOrders != value)
                    _goOrders = value;
            }
        }
        
        /// <summary>Вариац. маржа</summary>
        public double VariableMarg
        {
            get { return _variableMarg; }
            set
            {
                if (_variableMarg != value)
                    _variableMarg = value;
            }
        }
        /// <summary>Активы/ГО</summary>
        public double ActivedOnGO
        {
            get { return _activedOnGo; }
            set
            {
                if (_activedOnGo != value)
                    _activedOnGo = value;
            }
        }
        
        /// <summary>Сумма ден.остатков</summary>
        public double SummMoneyOstatoc
        {
            get { return _summMoneyOstatoc; }
            set
            {
                if (_summMoneyOstatoc != value)
                    _summMoneyOstatoc = value;
            }
        }
        /// <summary>Суммарно заблок.</summary>
        public double SummBlock
        {
            get { return _summBlock; }
            set
            {
                if (_summBlock != value)
                    _summBlock = value;
            }
        }
        
        /// <summary>Парам. расч.</summary>
        public string ParametersRaschet
        {
            get { return _parametersRaschet; }
            set
            {
                if (_parametersRaschet != value)
                    _parametersRaschet = value;
            }
        }

        #endregion
    }
}
